﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace JControlEx.Common
{
    /// <summary>
    /// A enumeration that provides show member level.
    /// </summary>
    public enum ShowMemberLevel
    {
        /// <summary>
        /// Show only properties.
        /// </summary>
        Property,

        /// <summary>
        /// Show public members, include property.
        /// </summary>
        Field,

        /// <summary>
        /// Show methods related to property, include public members.
        /// </summary>
        Method,

        /// <summary>
        /// Show Method and Field
        /// </summary>
        MethodField
    }

    /// <summary>
    /// A enumeration that indicate how the properties sort.
    /// </summary>
    public enum PropertySortBy
    {
        /// <summary>
        /// Sort by alpha-beta.
        /// </summary>
        Alphabeta,

        /// <summary>
        /// Sort by property alpha-beta.
        /// </summary>
        Property,

        /// <summary>
        /// Sort by alpha-beta and attibutes mixed.
        /// </summary>
        ABMixedAttribute,

        /// <summary>
        /// No sort by method, depends on the .Net random.
        /// </summary>
        RuntimeRandom
    }
}
